package com.housekeeping.housekeeping.cleanerInformation.service;

import com.housekeeping.housekeeping.cleanerInformation.entity.Cleaner;
import com.housekeeping.housekeeping.cleanerInformation.utils.Page;

import java.sql.SQLException;
import java.util.List;


public interface ICleanerService {

    /**
     * 项数据库中插入数据
     * @param cleaner 保洁员对象
     * @return 数据库操作受影响行数
     * @throws SQLException
     */
    int cleanerInsert(Cleaner cleaner) throws SQLException;

    /**
     * 分页查询方法
     * @param page 当前页
     * @param size 一页中的数据条数
     * @return page对象 中存放 当前页, 一页中的数据条数,
     * @throws SQLException
     */
    Page<Cleaner> list(int page, int size) throws SQLException;

    /**
     * 模糊查询 根据姓名查询
     * @param page
     * @param size
     * @param name 查询条件
     * @return
     * @throws SQLException
     */
    Page<Cleaner> searchList(int page, int size, String name) throws SQLException;

    /**
     * 精确查询, 根据电话号码精确查询
     * @param page
     * @param size
     * @param telephoneNumber 电话号码
     * @return
     */
    Page<Cleaner> exactSelectTelephoneNumber(int page, int size, String telephoneNumber) throws SQLException;

    /**
     * 修改保洁员信息
     * @param cleaner 保洁员对象
     * @return 操作数据库返回的受影响行数
     */
    int cleanerUpdate(Cleaner cleaner) throws SQLException;

    /**
     * 删除保洁员信息 根据保洁员的id删除
     * @param id
     * @return
     */
    int cleanerDelete(int id) throws SQLException;

    /**
     * 根据id批量删除保洁员
     * @param list 存放保洁员id的集合
     * @return
     */
    int cleanerDeleteAll(List<Cleaner> list) throws SQLException;
}